Adaptive image encoding device and method

ABSTRACT

Provided are an image encoding method and device. When carrying out image encoding for a block within a slice, at least one block in a restored block of the slice is set as a reference block. When this is done, the encoding parameters of the reference block are distinguished, and the block to be encoded is encoded adaptively based on the encoding parameters.

TECHNICAL FIELD

The present invention relates to a method and apparatus for videocoding, and more particularly, to an apparatus and method using anadaptive video coding.

BACKGROUND ART

In a method of coding a video, a motion vector and a reference pictureindex of a coding target block may be determined using a motion vectorand a reference picture index of a neighboring block in conventionalP_SKIP and B_SKIP modes.

However, when the motion vector or the reference picture index of theneighboring block does not exist, the P_SKIP or the B_SKIP mode may beperformed using a motion vector (0, 0) or a reference picture index of‘0’.

Consequently, this scheme does not properly use local characteristicsadjacent to the coding target block.

In general, there exists a high correlation between the coding targetblock and the neighboring block thereof. A context model may be widelyreflected in an video coding standard to be used based on an assumptionwith respect to the correlation.

The video coding standard may support an intra-coding in a inter slice.In a specific environment, there is a case in which an importance of anintra-coded macro block (MB) within the inter slice may be much greaterthan that of an inter-coded macro block.

DISCLOSURE OF INVENTION Technical Solutions

According to an aspect of an exemplary embodiment, there is provided avideo coding method, including: reconstructing a plurality of blockswithin a first slice with respect to the first slice including theplurality of blocks; determining at least one block among the pluralityof reconstructed blocks as a referencing block; discriminating a codingparameter of the referencing block; and adaptively coding a codingtarget block within the first slice based on the coding parameter.

The referencing block may be determined based on similarity in pixelvalues between the plurality of reconstructed blocks and the codingtarget block.

The referencing block may be determined based on similarity in codingparameters between blocks, and the coding parameter may include at leastone of an example with respect to at least one of an intra-predictionmode, an inter prediction mode, a motion vector, a reference pictureindex, a coded block pattern, a quantization parameter, a block size,block partition information, and a macro block type, a statisticalexample, and a combined example.

The similarity in the coding parameters between the blocks may bedetermined through at least one combination among the coding parameters.The referencing block may be determined in accordance with a relativeposition with respect to the coding target block.

The referencing block among the plurality of reconstructed blocks may beat least one block most adjacent to the coding target block.

The referencing block may be a reconstructed block in which a blockposition within a picture corresponds to the coding target block withinthe previously reconstructed picture.

The relative position may be at least one of a fixed position within thefirst slice, a position changeable within the first slice, and aposition changeable in a slice unit.

The discriminating of the coding parameter may include applying motioninformation of the referencing block as the coding parameter of thereferencing block, and the adaptively coding, of the coding targetblock, may include coding the coding target block based on the motioninformation of the referencing block.

The coding parameter may include a luminance intra-prediction directionof the referencing block. When the referencing block is intra-coded, thecoding target block may be coded to have the luminance intra-predictiondirection of the referencing block, or coded to have only the luminanceintra-prediction direction similar to the intra-prediction direction ofthe referencing block.

The coding parameter may include a motion vector, and the coding targetblock may be coded using a motion vector of the referencing block orcorded only using a motion vector similar to the motion vector of thereferencing block when the referencing block is inter-coded.

The coding parameter may include a reference picture index, and thecoding target block may be coded using a reference picture index of thereferencing block or coded only using a reference picture index similarto the reference picture index of the referencing block when thereferencing block is inter-coded.

The coding parameter may include a prediction direction, and the codingtarget block may be coded in a prediction direction of the referencingblock when the referencing block is inter-coded.

The referencing block may exist as a plurality, and when the pluralityof referencing blocks is determined by a relative position or anabsolute position within an picture, the discriminating of the codingparameter may include excluding, from the referencing block, a blockpositioned outside a boundary of the first slice, among the plurality ofreferencing blocks.

The video coding method may further include discriminatingcharacteristics of the referencing block based on the coding parameter,and the coding target block may be adaptively coded based on the codingparameter when spatial redundancy is higher than temporal redundancy ofthe characteristics.

When a plurality of neighboring blocks, among the neighboring blocks ofthe coding target block, is intra-coded, the spatial redundancy may bedetermined to be higher than the temporal redundancy.

The coding mode of the coding may be determined as a coding modeselected according to competition between an adaptively coded mode andan adaptively uncoded mode.

The selected coding mode may be signaled to a decoder by a coding schemeindicator.

The video coding method may further include transmitting, to a decoder,a referencing block identifier with respect to which referencing blockis selected.

According to another aspect of an exemplary embodiment, there isprovided a video coding method, including: reconstructing a plurality ofblocks within a first slice with respect to the first slice includingthe plurality of blocks; determining at least one block among theplurality of reconstructed blocks as a referencing block; discriminatinga coding parameter of the referencing block; and adaptively decoding adecoding target block within the first slice based on the codingparameter.

The adaptively decoding of the decoding target block may includededucting omitted coding parameter information from the referencingblock.

The omitted coding parameter information may be deducted from thereferencing block using a referencing block identifier indicating whichreferencing block is selected.

According to another aspect of an exemplary embodiment, there isprovided a video coding device, including: a storage unit to store data;a buffer to receive data with respect to a slice and blocks within theslice, and to store the received data; and a control unit to receive thedata with respect to the slice and blocks within the slice from thebuffer, to determine a referencing block, to discriminate a codingparameter of the referencing block, to discriminate characteristics ofthe referencing block, and to adaptively code a coding target blockwithin the slice. Here, the storage unit may receive data required foran operation of the control unit from the control unit, and transmit thedata stored in accordance with a request of the control unit to thecontrol unit.

Effects of Invention

According to an embodiment, when coding a video, a coding parameter of acoding target block may be adaptively selected from a referencing block,thereby improving a video compression performance.

In addition, according to an embodiment, when spatial redundancy ishigher than temporal redundancy due to local characteristics of apicture, a coding target block may be intra-coded, thereby improving avideo compression performance.

BRIEF DESCRIPTION OF DRAWINGS

FIG. 1 is a flowchart illustrating a video coding method according to anembodiment of the present invention;

FIG. 2 is a diagram illustrating an example of a slice and a block to bea target of coding;

FIG. 3 is a diagram illustrating a video coding device according to anembodiment of the present invention;

FIG. 4 is a diagram illustrating reconstructed blocks within a currentslice, a referencing block among the reconstructed blocks, and a currentblock, according to an embodiment of the present invention;

FIG. 5 is a diagram illustrating reconstructed blocks within a currentslice, a plurality of referencing blocks among the reconstructed blocksand one referencing block among the plurality of referencing blocks, anda current block according to an embodiment of the present invention;

FIG. 6 is a diagram illustrating a current block within a currentpicture, reconstructed blocks within a previously reconstructed picture,a referencing block.

FIG. 7 is a diagram illustrating an intra-coding of a current block, inaccordance with luminance and chrominance intra-prediction direction ofa referencing block, according to an embodiment of the presentinvention;

FIG. 8 is a diagram illustrating an example of an intra-coding of acurrent block, in accordance with presence and absence of a residualsignal of a referencing block, according to an embodiment of the presentinvention;

FIG. 9 is a diagram illustrating an inter-coding of a current block, inaccordance with an inter macro block partition of a referencing block,according to an embodiment of the present invention;

FIG. 10 is a diagram illustrating an inter-coding of a current block, inaccordance with a motion vector of a referencing block, according to anembodiment of the present invention;

FIG. 11 is a diagram illustrating an inter-coding of a current block, inaccordance with a reference picture index of a referencing block,according to an embodiment of the present invention;

FIG. 12 is a diagram illustrating an inter-coding of a current block, inaccordance with a reference picture list of a referencing block,according to an embodiment of the present invention; and

FIG. 13 is a diagram illustrating an inter-coding of a current block, inaccordance with a prediction direction of a referencing block, accordingto an embodiment of the present invention.

BEST MODE FOR CARRYING OUT THE INVENTION

Terms used throughout the present specification are used toappropriately describe exemplary embodiments of the present invention,and thus may be different depending upon a user and an operator'sintention, or practice of application fields of the present invention.Therefore, the terms must be defined based on descriptions made throughthe present invention.

Although a few exemplary embodiments of the present invention have beenshown and described, the present invention is not limited to thedescribed exemplary embodiments, wherein like reference numerals referto the like elements throughout.

When a plurality of neighboring blocks among neighboring blocks of acoding target block in a inter slice is intra-coded, spatial redundancymay be determined to be greater than temporal redundancy due to localcharacteristics of pictures. In this case, it may be more effective thatthe coding target block is intra-coded, and a video compressionperformance may be improved through this intra-coding.

Accordingly, when the spatial redundancy is greater than the temporalredundancy due to the local characteristics of the pictures in the interslice, an adaptive intra-coding that depends upon a coding parameter ofa neighboring block may be performed.

FIG. 1 is a flowchart illustrating a video coding method according to anembodiment of the present invention.

The video coding method may be used for coding a block within a slice.Hereinafter, a block to be a target of coding may be referred to as acurrent block, and a slice including the current block may be referredto as a current slice.

In embodiments of the present invention, the block may denote a unit ofvideo coding and decoding.

In the video coding and decoding, the unit of the coding or the decodingmay denote a segmented unit, when coding or decoding is performed,obtained by dividing a single picture into segmented blocks.Accordingly, the unit of the coding or the decoding may be referred toas a block, a macro block, a coding unit, a prediction unit, or thelike. A single block may be further divided into lower blocks having asmaller size than that of the single block.

First, the current slice may include a plurality of blocks. Within thecurrent slice, at least one reconstructed block may exist. Thereconstructed block may be a block having been already reconstructedthrough operations S110 to S140, which will be described in detail. Whenthe current block is reconstructed through the operations S110 to S140,which will be described, the current block may be one of thereconstructed blocks, for a next block which is a target of coding.

Thereafter, in operation S110, a referencing block for coding thecurrent block may be determined.

At least one block, among the blocks of the current slice which havealready been reconstructed, may be determined as the referencing block.

In FIG. 2, an example of reconstructed blocks 220 within the currentslice 210, an example of a referencing block 240 which are selected fromthe reconstructed blocks, and a current block 230 are illustrated.

The referencing block may be determined based on pixel value similaritybetween blocks. The pixel value similarity may be measured by ameasurement method of the pixel value similarity between blocksgenerally used in a video coding, such as a sum of absolute differences(SAD), a sum of absolute transformed difference (SATD), a sum of thesquared differences (SSD), and the like. In this instance, a blockhaving the highest pixel value similarity may be determined as thereferencing block.

The pixel value similarity may be determined in a one-to-one schemebetween the blocks. That is, the pixel value similarity may bedetermined in the one-to-one scheme between the reconstructed blocks andthe current block.

The pixel value similarity may be determined in a one-to-many schemebetween the blocks. A combination of weighted values of pixel values ofthe blocks and a different single block may become targets to becompared. That is, the pixel value similarity may be determined in amany-to-one scheme between the reconstructed blocks and the currentblock.

The pixel value similarity may be determined in a many-to-many schemebetween the blocks. A combination of weighted values of pixel values ofa plurality of blocks and a combination of weighted values of pixelvalues of a plurality of different blocks may become targets to becompared. That is, the pixel value similarity may be determined in themany-to-many scheme between the plurality of reconstructed blocks andthe plurality of blocks including the current block.

The referencing block may be determined using coding parametersimilarity between blocks.

The coding parameter may be information used for coding a picture, andmay include respective examples with respect to an intra-predictionmode, an inter prediction mode, a motion vector, a reference pictureindex, a coded block pattern, a quantization parameter, a block size,block partition information, a macro block type, and the like, astatistical example, and a combined example thereof.

An inter coding mode and an inter prediction scheme may include a blockmatching algorithm, a P_SKIP mode, a B_SKIP mode, and a direct mode.

In this instance, the P_SKIP mode, the B_SKIP mode, and the direct modemay denote specific examples of methods in which motion informationincluding the motion vector and a reference picture index is inducedfrom an encoder and a decoder in the same manner when coding a specificblock, and the induced motion information is used as motion informationof a corresponding block. Embodiments of the present invention may beapplied to a method in which motion information is induced from theencoder and the decoder in the same manner, and the motion informationis used.

The intra-coding mode may include an intra 4×4 mode, an intra 8×8 mode,an intra 16×16 mode, and an intra 32×32 mode.

In this instance, the intra-coding mode may indicate a segmented size ofan intra-coding block when performing an intra-coding. In the blockhaving the respective segmented sizes, various intra-prediction schemesmay be used.

The intra-prediction scheme may include a line prediction based onH.264/advanced video coding (AVC), a displaced intra-prediction (DIP), atemplate matching (TM), and a weighted line prediction.

An intra-prediction direction may include a line prediction directionbased on the H.264/AVC and a weighted line prediction direction.

An inter macro block partition may indicate a size of a prediction blocksegmented when performing a prediction coding. The inter macro blockpartition may include 64×64, 64×32, 32×64, 32×32, 32×16, 16×32, 16×16,16×8, 8×16, 8×8, 8×4, 4×8, and 4×4. The pixel value similarity mayinclude a value measured by the SAD, the SATD, or the SSD.

The coding parameters within the referencing block may be directly usedas a coding parameter of the current block to code the current block, oronly a part thereof may be used.

Similarity of a coding parameter between the blocks may denote identityof a prediction type (for example, intra or inter), similarity of aprediction direction, similarity of a prediction mode, similarity of ablock size, and the like. When using the same intra-prediction modebetween blocks, or using motion vectors having a similar size, or usingthe same quantization parameter, the same block size, or the same blockpartition information, similarity of the coding parameter between theblocks may be determined to be high.

The similarity of the coding parameter between the blocks may bedetermined by a combination of at least one parameter among the codingparameters. Also, the referencing block may be determined using anequation calculated from the coding parameters of the plurality ofselected referencing blocks.

A result obtained through the equation using the combination of thecoding parameters of the selected referencing blocks may be determinedas a coding parameter of a virtual block, and the virtual block may bedetermined as the referencing block.

To determine the referencing block, the current block and a block havinga high similarity of a pixel value, from among the reconstructed blocksof the current slice, may be determined as the referencing block, sothat a displaced inter-prediction scheme using the pixel value of thereferencing block as the pixel value of the current block may be used.

To determine the referencing block, a template matching method in whicha pixel value similarity between neighboring pixels of reconstructedblocks of the current slice and pixel values of reconstructed pixels,neighboring the current block, is discriminated to determine a blockhaving a higher pixel value similarity compared to the referencingblock, may be used.

When the DIP or the TM is used to predict a pixel value in the currentslice through the intra-coding blocks, an intermediate value withrespect to a displacement vector of the coding blocks through the DIP orthe TM may be predicted, and a result of the prediction may bedetermined as a coding parameter of the virtual block.

When coding the current block, the DIP or the TM may be used directly,and the referencing block, among the reconstructed blocks, may bedetermined using the method above or the following method.

In addition, in a case where inter-coding blocks use a motion prediction(or, a block matching algorithm) of predicting a pixel value from theprevious slice, when an intermediate value with respect to the motionvector of the coded block is predicted, a result obtained through theprediction of the intermediate value may be determined as the codingparameter of the virtual block. The virtual block may be determined asthe referencing block.

The referencing block may be determined in accordance with an absoluteposition within a picture, and or determined in accordance with arelative position with respect to the current block.

When the referencing block is determined, in accordance with therelative position with respect to the current block, a decoded blockmost adjacent to the current block may be determined as the referencingblock. In this instance, as the referencing block with respect to thecurrent block, at least one block among the decoded blocks most adjacentto the current block may be determined as the referencing block.

For example, the relative position with respect to the current block maydenote a position of the reconstructed block adjacent to the currentblock. That is, a reconstructed block abutting a boundary of the currentblock may be referred to as an adjacent reconstructed block.

In FIG. 4, an example of reconstructed blocks 420 within a current slice410, an example of a referencing block 440 among the reconstructedblocks 420, and a current block 430 are illustrated.

In FIG. 5, an example of reconstructed blocks 520 within a current slice510, an example of a plurality of referencing blocks 540 among thereconstructed blocks 520, and an example of a single referencing block550 among the plurality of referencing blocks 540 and a current block530 are illustrated.

In addition, when the referencing block is determined, in accordancewith the relative position with respect to the current block, areconstructed block to which a block position within a picturecorresponds may be determined as the referencing block.

In this instance, when a current block position within a picture and areferencing block position within a previously reconstructed picture arethe same, the block positions within the picture of the both blocks maycorrespond to each other. When the referencing block within thepreviously reconstructed picture has the same block position as that ofthe current block, the referencing block within the previouslyreconstructed picture may be referred to as a collocated block.

In FIG. 6, an example of a current block 630 within a current picture610, and an example of reconstructed blocks 640 within a previouslyreconstructed picture 620 and a referencing block 650 are illustrated.

The relative position may be fixed within a single slice, or changed.The relative position may be changed in a slice unit.

The referencing block may be determined using at least one of the abovedescribed pixel value similarity, the coding parameter similarity, thecalculated equation, the absolute position, and the relative position.

When an adaptive skip mode is used, a block existing in a specificrelative position with respect to the current block may be determined asthe referencing block. In this instance, based on correlation within apicture, a decoded block most adjacent to the current block may bedetermined as the referencing block.

Next, in operation S120, a coding parameter of the referencing block maybe discriminated.

First, whether the referencing block is intra-coded or inter-coded maybe determined.

When a single block is determined as the referencing block in operationS110 of the determining of the referencing block, only a codingparameter of the block may be discriminated, and when a plurality ofblocks are determined as the referencing block, the same codingparameter or a similar coding parameter among the referencing blocks maybe discriminated.

When the referencing block is intra-coded, an intra-coding mode, aluminance intra-prediction direction, a luminance intra-predictionscheme, a chrominance intra-prediction direction, a chrominanceintra-prediction scheme, a transform method, a displaced vector, a codedblock pattern, presence and absence of a residual signal, a coefficientscan method, and the like may be included as a coding parameter to becoded.

When the referencing block is inter-coded, an inter coding mode, aninter macro block partition, a motion vector, a reference picture list,a reference picture list, a prediction direction, an adaptiveinterpolation filter, presence and absence of a residual signal, acoefficient scan method, and the like may be included as the codingparameter to be discriminated.

In operation S110 of determining of the referencing block, when thereferencing block is determined by a relative position or an absoluteposition within a picture, a part of the referencing block may bepositioned outside a boundary of a picture or a slice. The referencingblock positioned outside the boundary may be excluded from thediscriminating of the coding parameter.

When a specific coding method is used, operation S120 of thediscriminating of the coding parameter may be omitted.

For example, when a coding method performed by excluding only motioninformation is applied to the current block, operation S120 of thediscriminating of the coding parameter may be omitted. (Otherwise, inoperation S120 of discriminating of the coding parameter, motioninformation of the referencing block may be determined as the codingparameter of the referencing block)

In addition, to code the current block, when the referencing block isdetermined in operation S110, the motion information of the referencingblock may be applied to the current block, whereby the current block maybe coded in operation S140.

Whether the determined referencing blocks are intra-coded or inter-codedin an adaptive skip mode may be discriminated, whether the determinedreferencing blocks exist outside a boundary of a picture and a slice maybe discriminated, and then a coding parameter of the referencing blockmay be discriminated.

Next, in operation S130, characteristics of the referencing block may bediscriminated based on the coding parameter of the referencing block.

When a spatial redundancy of the characteristics of the referencingblock is discriminated to be higher a temporal redundancy, the currentblock may be adaptively coded based on the coding parameter.

When a plurality of neighboring blocks of the current block in an interslice are intra-coded, the spatial redundancy may be determined to behigher than the temporal redundancy due to local characteristics of apicture.

When a specific coding method is used, operation S130 of discriminatingof the characteristics of the referencing block may be omitted.

For example, when the coding method performed by excluding only themotion information is applied to the current block, operation S120 ofdiscriminating of the coding parameter and operation S130 ofdiscriminating of the characteristics of the referencing block may beomitted. When the referencing block is determined to code the currentblock in operation S110, the current block may be coded by applying themotion information of the referencing block to the current block inoperation S140.

Next, the current block may be adaptively coded using the discriminatedcoding parameter of the referencing block in operation S140.

A specific coding or decoding may be performed on specific signalinginformation in accordance with the parameter, or the signalinginformation may be defined as a specific semantic.

For example, when having a coding parameter in which at least one ofreferencing blocks A, A′, and A″ satisfies a condition B, a syntax C ofthe current block may be defined to have a semantic D, or to perform adecoding process E. When having a coding parameter in which at least oneof referencing blocks A, A′, and A″ satisfies a condition B′, the syntaxC of the current block may be determined to have a semantic D′ or toperform a decoding process E′. In this case, the syntax may be a factorof a bit stream, and denote a syntax element or a sentence element.

When the referencing block is intra-coded, only the intra-coding may beperformed on the current block. The syntax required for inter-coding andthe semantic and decoding process may be used to intra-coding.

An example of an intra-coding of the current block in accordance withthe coding parameter of the referencing block will be described in thefollowing Table 1.

TABLE 1 Coding parameter of referencing block Coding of current blockIntra-coding mode Syntax required for inter-coding is used to increaseand signal an intra-coding mode. Semantic is defined as semantic withrespect to intra-coding mode, and decoding process is defined asdecoding process with respect to the intra-coding mode. Syntax requiredfor inter-coding is used to increase and signal intra macro blockpartition. Semantic is defined as semantic with respect to intra macroblock partition, and decoding process is defined as decoding processwith respect to macro block partition. Syntax required for inter codingis used to increase and signal intra-prediction direction. Semantic isdefined as semantic with respect to intra-prediction direction, anddecoding process is defined as decoding process with respect to theintra-prediction direction. When a referencing block is intra-coded,current block is coded to an intra-coding mode of the referencing blockin accordance with the intra-coding mode of the referencing block. Whena current block is coded to the intra-coding mode of the referencingblock, the intra-coding mode of the referencing block is used as theintra-coding mode of the current block. Accordingly, intra-coding modeof current block may not be signaled to a decoder, thereby improvingcoding performance. Luminance and When a referencing block isintra-coded, chrominance intra- coding may be performed to have aprediction direction luminance intra-prediction direction of thereferencing bock, or the coding may be performed to have the luminanceintra- prediction direction similar to the intra- prediction directionof referencing block. When coding current block to have the luminanceintra-prediction direction of referencing block, the luminance intra-prediction direction of the referencing block are used as theintra-prediction direction. Accordingly, the luminance intra-predictiondirection the current block are not signaled to a decoder, therebyimproving coding performance. Residual signal When a residual signal ofa referencing block is not coded, the residual signal of a current blockmay not be coded. Bit required for coding a coded block pattern (CBP),that is, syntax may be saved. In this instance, based on whether to codethe residual signal of the referencing block, the CBP of current blockis not signaled, and the residual signal is not signaled, therebyimproving coding performance of the current block.

When the intra-coding method of the current block, in accordance withthe coding parameter of the referencing block, is used in an encoder, adecoder may deduct the omitted coding parameter information from thereferencing block, and the coding parameter information omitted from thecurrent block may be appropriately used, by applying the deductedinformation to a current coding target block. In this instance, adecoder may transmit, to the decoder, a referencing block identifier,indicating that which referencing block is selected, as necessary, andmay deduct the omitted coding parameter information from a correspondingreferencing block.

In FIG. 7, an example of an intra-coding of the current block inaccordance with luminance and chrominance intra-prediction direction ofthe referencing block is illustrated.

In FIG. 8, an example of an intra-coding of the current block, inaccordance with presence and absence of a residual signal of thereferencing block, is illustrated.

When the referencing block is inter-coded, only an inter-coding may beperformed on the current block. A syntax, a semantic, and a decodingprocess which are required for the intra-coding may be used for theinter-coding.

An example of the inter-coding of the current block, in accordance withthe coding parameter of the referencing block, is illustrated in thefollowing Table 2.

TABLE 2 Coding parameter of referencing block Coding of current blockInter-coding mode Syntax required for intra-coding is used to increaseand signal inter-coding mode. A semantic is defined as a semantic withrespect to inter coding mode, and a decoding process is defined as thedecoding process with respect to the inter-coding mode. A syntaxrequired for the intra-coding is used to increase and signal inter-macroblock partition. The semantic is defined as the semantic with respect tothe inter-macro block partition, and the decoding process is defined asthe decoding process with respect to the macro block partition. Thesyntax required for the intra-coding is used to increase and the signalinter-prediction scheme. The semantic is defined as the semantic withrespect to the inter-prediction scheme, and the decoding process isdefined as the decoding process with respect to the inter-predictionscheme. When a referencing block is inter-coded, a current block iscoded to the inter-coding mode of the referencing block in accordancewith the inter-coding mode of the referencing block. When coding thecurrent block to the inter-coding mode of the referencing block, theinter-coding mode of the referencing block is used as the inter-codingmode of the current block. Accordingly, the inter-coding mode of thecurrent block may not be signaled to a decoder, thereby improving codingefficiency. When the referencing block is inter-coded, the current blockis coded to the inter macro block partition of the referencing block inaccordance with the inter macro block partition of the referencingblock. Also, the current block may be coded only to the inter macroblock partition, having a macro block partition similar to the intermacro block partition. When the current block is coded to the intermacro block partition of the referencing block, the inter macro blockpartition of the referencing block is used as the inter macro blockpartition of the current block. Accordingly, the inter macro blockpartition of the current block may not be signaled to the decoder,thereby improving coding efficiency. Motion vector When the referencingblock is inter-coded, the current block is coded to a motion vector ofthe referencing block in accordance with the motion vector of thereferencing block. Also, the current block may be coded only to themotion vector (that is, a size difference between both the motionvectors is not great) similar to the motion vector. When the currentblock is coded to the motion vector of the referencing block, the motionvector of the referencing block is used as the motion vector of thereferencing block. Accordingly, the motion vector of the current blockmay not be signaled to a decoder, thereby improving coding efficiency.Reference picture index When a referencing block is inter-coded, acurrent block is coded to a reference picture index of the referencingblock in accordance with the reference picture index of the referencingblock. Also, the current block may be coded only to the referencepicture index (that is, the size difference between the referencepicture indices is not great) similar to the reference picture index.When the current block is coded to the picture index of the referencingblock, the reference picture index of the referencing block is used asthe reference picture index of the current block. Accordingly, thereference picture index of the current block is not signaled to adecoder, thereby improving coding efficiency. Reference picture listWhen a referencing block is inter-coded, a current block is coded to areference picture list in accordance with a reference picture list ofthe referencing block. When the current block is coded to the referencepicture list in accordance with the reference picture list of thereferencing block. When the current block is coded to the referencepicture list of the referencing block, the reference picture list of thereferencing block is used as the reference picture list of the currentblock. Accordingly, the reference picture list of the current block maynot be signaled, thereby improving coding efficiency. Predictiondirection When a referencing block is inter-coded, a current block iscoded in a prediction direction of a referencing block in accordancewith a prediction direction of the referencing block. When the currentblock is coded in the prediction direction of the referencing block, theprediction direction of the referencing block is used as the predictiondirection of the referencing block. Accordingly, the predictiondirection of the current block may not be signaled to a decoder, therebyimproving coding efficiency. Interpolation filer When a referencingblock performs motion prediction/interpolation of a referencing blockusing a specific interpolation filter,a motion prediction/interpolationof a current block is performed using a corresponding interpolationfilter in accordance with a form and a type of an interpolation filterof the referencing block, and coding may be perfolined. Residual signalWhen a residual signal of a referencing block is not coded, the residualsignal of the current block may not be coded. Bit required for coding aCBP, that is, syntax may be saved. In this instance, with respect tocurrent block, the CBP of the current block may not be signaled inaccordance with whether to perform coding of the residual signal of thereferencing block, and the residual signal is not coded, therebyimproving coding efficiency.

When an encoder uses an inter-coding method of the current block, inaccordance with a coding parameter of the referencing block, a decodermay deduct the omitted coding parameter information from the referencingblock. The decoder may appropriately use the coding parameterinformation omitted from the current block by applying the deductedinformation from the current decoding target block.

In this instance, as necessary, the encoder may transmit to the decoder,a reference block identifier (or including information about whichreferencing block is selected) indicating which referencing block isselected. By using the reference block identifier, the decoder maydeduct the omitted coding parameter information from the identifiedreferencing block.

In FIG. 9, an example of an inter-coding of the current block, inaccordance with an inter macro block partition of the referencing block,is illustrated.

In FIG. 10, an example of an inter-coding of the current block, inaccordance with a motion vector of the referencing block, isillustrated.

In FIG. 11, an example of an inter-coding of the current block, inaccordance with the reference picture index of the referencing block, isillustrated.

In FIG. 12, an example of an inter-coding of the current block, inaccordance with the prediction direction of the referencing block, isillustrated.

In FIG. 13, an example of an inter-coding of the current block, inaccordance with a prediction direction of the referencing block, isillustrated.

A linear combination of pixel values within the referencing blocks maybe used as the prediction block of the current block.

When having a coding parameter in which at least one of referencingblocks A, A′, and A″ satisfies a condition B, a prediction block G ofthe current block may be generated by a linear combination according tothe following Equation 1.

G=a*F+b*F′  Equation 1

Here, the prediction block F may be a pixel value of the referencingblock. The prediction block F may be a prediction block generated by acoding parameter of the current block. In this instance, each of a and bis a weight.

In accordance with a reconstructed pixel value of the referencing blockand a coding parameter of the current block, a prediction block G may begenerated by a sum of weights. The generated prediction block G may beused as the prediction block of the current block.

A limited candidate mode set may be used as a parameter capable ofcoding the current block. When having a coding parameter in which atleast one of referencing blocks A, A′, and A″ satisfies a condition B, aparameter capable of coding the current block may be limited as acandidate mode set C. The above set may include a macro block type, asub macro block type, an inter macro block partition, a motion vector, areference picture index, a reference picture list, a predictiondirection, and the like.

For example, when the referencing block is intra-coded, and the currentblock is intra-coded, the coding parameter of the current block may belimited as a coding parameter within a picture.

The limitation may eliminate a syntax, a semantic, and a decodingprocess which are used for an inter-coding parameter, thereby improvingcoding efficiency.

A coding mode of the current block may be determined as an optimumcoding mode in accordance with competition.

For example, when having a coding parameter in which at least one ofreferencing blocks A, A′, and A″ satisfies a condition B, the currentblock may be coded to an optimized coding mode determined throughcompetition in a rate-distortion optimization view, a distortion view,and a rate view between modes adaptively coded in accordance with 1) asyntax, a semantic, and a decoding process of an existing codingparameter and 2) the referencing block.

In addition, competition between a mode that is adaptively coded inaccordance with the coding parameter of the referencing block and a modethat is not adaptively coded may be performed. A coding mode of thecurrent block may be selected through the competition.

In this case, additional coding scheme indicator and a syntax withrespect to whether the current block is coded to the first coding mode(that is, adaptive coding mode in accordance with a coding parameter ofthe referencing block) or to the second coding mode (that is,non-adaptive coding mode) may be transmitted to the decoder. The decodermay decode the current block to an appropriate mode using thetransmitted additional coding scheme indicator and the syntax.

That is, either an adaptive coding method using the coding parameter ofthe referencing block or a non-adaptive coding method without using thecoding parameter of the referencing block which is suitable for thecoding may be selected. Information about the selected method (that is,coding mode) may be signaled to the decoder.

For example, a coding scheme showing a minimum rate-distortion cost in aview of the rate-distortion may be selected in the encoder. In addition,so that the selected coding scheme is decoded in the decoder, a codingscheme indicator with respect to the selected coding scheme may betransmitted to the decoder.

The coding mode of the current block may have an additional syntax, asemantic, and a decoding process in accordance with a condition of acoding parameter of the referencing block.

For example, when having a coding parameter in which at least one of thereferencing blocks A, A′, and A″ satisfies a condition B, the codingmode of the current block may have an additional syntax C, a semantic Dwith respect to C, and a decoding process E with respect to the C.

The coding mode of the current block may have an additional syntax, asemantic, and a decoding process, regardless of the coding parameter ofthe referencing block.

For example, regardless of the coding parameter of the referencingblock, the coding mode of the current block may have the additionalsyntax C, the semantic D with respect to C, and a decoding process Ewith respect to C.

When the coding mode of the current block is coded in a skip scheme, anexample of a prediction method of an inter-prediction block isillustrated in the following Table 3.

TABLE 3 parameter Usage method of prediction block Reference pictureindex A Syntax, a semantic, and a decoding process with respect to areference picture index are added to a coding mode of a current block,and an inter-prediction block is predicted from a referencing block Inaccordance with a reference picture index of any one of the referencingblocks, and the inter-prediction block may be predicted from areferencing picture by a reference picture index of the referencingblock. Motion vector A Syntax, a semantic, and a decoding process withrespect to a motion vector are added to a coding mode of a currentblock, and an inter-prediction block is predicted from the motionvector.

Accordingly, when the current block is included in an inter slice, andat least one of the referencing blocks is intra-coded, the coding modeof the current block is an inter-coding mode, however, has the motionvector and the reference picture index. In this case, the predictionblock of the current block may be generated by a sum of 1) weights ofintra-prediction blocks generated from an intra-coding parameter of thecurrent block and 2) weights of inter-prediction blocks generated fromthe motion vector and the reference picture index among inter-codingparameters of the current block.

In a case where the adaptive skip mode is used, when the current blockis coded to a P_SKIP mode, a B_SKIP mode, or a direct mode in an interslice, the current block may be adaptively coded in accordance with acoding parameter of the referencing block.

For example, a part or whole of the referencing block is intra-coded, anexample of the coding method of the current block is illustrated in thefollowing Table 4.

TABLE 4 Parameter of current block Usage method of prediction blockCoding mode A coding mode of a current block is signaled to a P_SKIPmode or a B_SKIP mode, however, an intra-coding mode of a referencingblock is directly used, and an intra-coding mode most similar to anintra- coding mode of a referencing block. The coding mode of thecurrent block is signaled to the P_SKIP mode or to the B_SKIP mode,however, the current block is intra-coded using a reconstructed pixel ofthe referencing block. Intra-prediction direction A coding mode of acurrent block is signaled to a P_SKIP mode or a B_SKIP mode, however, anintra-prediction direction of the current block is directly used as anintra-prediction direction of a referencing block, and otherwise aprediction direction most similar to the intra-prediction direction ofthe referencing block may be used. Residual signal A coding mode of acurrent block is signaled to a P_SKIP mode or a B_SKIP mode, however, aresidual signal of a current block is coded or is not coded inaccordance with the presence or absence of the residual signal of thereferencing block

FIG. 2 is a diagram illustrating reconstructed blocks within a currentslice, and a referencing block and a current block selected from thereconstructed blocks.

The reconstructed blocks 220 within the current slice 210, and thereferencing block 240 and the current block 230 selected from thereconstructed blocks 220 are illustrated.

FIG. 3 is a diagram illustrating a video coding device according to anembodiment of the present invention.

The video coding device 300 may include a control unit 310, a storageunit 320, and a buffer 330.

The control unit 310 may receive, from the buffer 330 and the storageunit 320, a slice and data with respect to blocks within the slice. Thecontrol unit 310 may perform determining of the referencing block,discriminating of the coding parameter of the referencing block,discriminating of characteristics of the referencing block, and anadaptive coding of the current block. The control unit 310 may store, inthe storage unit 320, data required for performing the determining, thediscriminating, and the coding.

The storage unit 320 may receive, from the control unit 310, datarequired for operating the control unit 310. The storage unit 320 maytransmit, to the control unit 310, the stored data in response to arequest of the control unit 310.

In addition, the buffer 330 may receive the slice and the data withrespect to the blocks within the slice from the outside, and store thereceived data.

The device is not limited only to the coding method, and may be appliedto an adaptive decoding method in accordance with the coding methodusing the coding operations in the decoder having the same purpose asthat of the coding process.

FIG. 4 is a diagram illustrating reconstructed blocks within a currentslice, a referencing block among the reconstructed blocks and a currentblock according to an embodiment of the present invention.

Reconstructed blocks 420 within the current slice 410, a referencingblock 440 among the reconstructed blocks 420, and a current block 430are illustrated.

FIG. 5 is a diagram illustrating reconstructed blocks within a currentslice, a plurality of referencing blocks among the reconstructed blocks,and a single referencing block among the plurality of referencing blocksand a single current block are illustrated.

Reconstructed blocks 520 within a current slice 510 is illustrated, anda plurality of referencing blocks 540 among the reconstructed blocks 520are illustrated. In addition, a single referencing block 550 among theplurality of referencing blocks 540 and a single current block 530 areillustrated.

FIG. 6 is a diagram illustrating a current block within a currentpicture, reconstructed blocks within a previously reconstructed picture,and a referencing block.

A current block 630 within a current picture 610, and reconstructedblocks 640 within a previously reconstructed picture 620 areillustrated. In addition, a referencing block 650 among thereconstructed blocks 640, the current block 630.

FIG. 7 is a diagram illustrating coding within a picture of a currentblock in accordance with a luminance and chrominance intra-predictiondirection of a referencing block according to an embodiment of thepresent invention.

Reconstructed blocks 720 within a current slice 710, referencing blocks730 and 732 among the reconstructed blocks 720, and a current block 740are illustrated.

Luminance and chrominance intra-prediction directions 750 and 752 of thereferencing blocks 730 and 732 are illustrated, and a luminance andchrominance intra-prediction direction 760 of the current block 740 areillustrated.

A luminance and chrominance intra-prediction direction 752 of an upperblock 732 among the referencing blocks 730 and 732 may be used as aluminance and chrominance intra-prediction direction 760 of the currentblock 740. That is, the current block 740 may be coded in accordancewith the luminance and chrominance intra-prediction direction 752 of theupper block 732.

A luminance and chrominance intra-prediction direction 760 may not betransmitted to the decoder. In this instance, information indicatingthat a referencing block of the current block 740, in the upper block752, may be transmitted to the decoder through a reference blockidentifier. The decoder may identify information indicating that theupper block 732 is the referencing block of the current block 740.

FIG. 8 is a diagram illustrating an example of an intra-coding of acurrent block in accordance with the presence and absence of a residualsignal of a referencing block according to an embodiment of the presentinvention.

Reconstructed blocks 820 within a current slice 810, referencing blocks830 and 832 among the reconstructed blocks 820, a current block 840,presence and absence 850 and 852 of a residual signal of the referencingblocks 830 and 832, and presence and absence 860 of a residual signal ofthe current block are illustrated.

Residual signals of all of the referencing blocks 830 and 832 may not becoded. Accordingly, the current block 840 does not have the residualsignal. In addition, a CBP syntax of the current block 840 indicatingthe presence and absence of the residual signal may not be transmitted.

In this instance, when the residual signal exists, CBP=1, and when theresidual signal does not exist, CBP=0.

When the CBP syntax is not transmitted, the decoder may infer that theresidual signal does not exist. In addition, the encoder may transmit,to the decoder, information indicating which referencing blocks is usedfor the current blocks 840 through the reference block identifier.

FIG. 9 is a diagram illustrating an inter coding of a current block, inaccordance with an inter macro block partition of a referencing block,according to an embodiment of the present invention.

Reconstructed blocks 920 within a current slice 910, referencing blocks930 and 932 among the reconstructed blocks 920, a current block 940, aninter macro block partition 950 of the referencing block 932, and aninter macro block partition 960 of the current block 940 areillustrated.

An inter macro block partition 950 of an upper block 932 among thereferencing blocks 930 and 932 may be used as an inter macro blockpartition 960 of the current block 940. That is, the current block 940may be coded in accordance with an inter macro block partition 950 ofthe upper block 932.

The inter macro block partition 960 of the current block 940 may not betransmitted to the decoder. Information indicating that the upper block932 is the referencing block of the current block 940 may be transmittedto the decoder through the referencing block identifier. The decoder mayidentify information indicating that the upper block 932 is thereferencing block of the current block 940 through the referencing blockidentifier.

FIG. 10 is a diagram illustrating an inter coding of a current block, inaccordance with a motion vector of a referencing block, according to anembodiment of the present invention.

Reconstructed blocks 1020 within a current slice 1010, referencingblocks 1030 and 1032 among the reconstructed blocks 1020, a currentblock 1040, a motion vector 1050 of the referencing block 1032, and amotion vector 1060 of the current block 1040 are illustrated.

The motion vector 1050 of an upper block 1032, among the referencingblocks 1030 and 1032, may be used as a motion vector 1060 of the currentblock 1040. That is, the current block 1040 may be coded in accordancewith the motion vector 1050 of the upper block 1032.

The motion vector 1060 of the current block 1040 may not be transmittedto the decoder. Information indicating that the upper block 1032 is thereferencing block of the current block 1040 may be transmitted to thedecoder through a referencing block identifier. The decoder may identifyinformation indicating that the upper block 1032 is the referencingblock of the current block 1040 through the referencing blockidentifier.

FIG. 11 is a diagram illustrating an inter coding of a current block inaccordance with a reference picture index of a referencing blockaccording to an embodiment of the present invention.

Reconstructed blocks 1120 within a current slice 1110, referencingblocks 1130 and 1132 among the reconstructed blocks 1120, a currentblock 1140, a reference picture index 1150 of the referencing block1132, and a reference picture index 1160 of the current block areillustrated.

The reference picture index 1150 of the upper block 1132 among thereferencing blocks 1130 and 1132 may be used as the reference pictureindex 1160 of the current block 1140. That is, the current block 1140may be coded in accordance with the reference picture index 1160 of theupper block 1132.

The reference picture index 1160 of the current block 1140 may not betransmitted to the decoder. Information indicating that the upper block1132 is the referencing block of the current block 1140 may betransmitted, to the decoder, through the referencing block identifier.The decoder may identify information indicating that the upper block1132 is the referencing block of the current block 1140 through thereferencing block identifier.

FIG. 12 is a diagram illustrating an inter coding of a current block, inaccordance with a reference picture list of a referencing block,according to an embodiment of the present invention.

Reconstructed blocks 1220 within a current slice 1210, referencingblocks 1230 and 1232 among the reconstructed blocks 1220, a currentblock 1240, a reference picture list 1250 of the referencing block and areference picture list 1260 of the current block are illustrated.

A reference picture list 1250 of an upper block 1232 among thereferencing blocks 1230 and 1232 may be used as a reference picture list1260 of the current block 1240. That is, the current block 1240 may becoded in accordance with the reference picture list 1250 of the upperblock 1232.

The reference picture list 1260 of the current block 1240 may not betransmitted to the decoder. Information indicating that the upper block1232 is the referencing block of the current block 1240 may betransmitted to the decoder through the referencing block identifier. Thedecoder may identify information indicating that the upper block 1232 isthe referencing block of the current block 1240 through the referenceblock identifier.

FIG. 13 is a diagram illustrating an inter coding of a current block inaccordance with a prediction direction of a referencing block accordingto an embodiment.

Reconstructed blocks 1320 within a current slice 1310, referencingblocks 1330 and 1332 among the reconstructed blocks 1320, a currentblock 1340, a prediction direction 1350 of the referencing block and aprediction direction 1360 of the current block are illustrated.

The prediction direction 1350 of the upper block 1332, among thereferencing blocks 1330 and 1332, may be used as the predictiondirection 1360 of the current block 1340. That is, the current block1340 may be coded in accordance with the prediction direction 1350 ofthe upper block 1332.

The prediction direction 1360 of the current block 1340 may not betransmitted to the decoder. Information indicating that the upper block1332 is the referencing block of the current block 1340 may betransmitted to the decoder through a referencing block identifier. Thedecoder may identify information indicating that the upper block 1332 isthe referencing block, of the current block 1340, through thereferencing block identifier.

The method according to the above-described example embodiments may berecorded in non-transitory computer-readable media including programinstructions to implement various operations embodied by a computer. Themedia may also include, alone or in combination with the programinstructions, data files, data structures, and the like. Examples ofnon-transitory computer-readable media include magnetic media such ashard disks, floppy disks, and magnetic tape; optical media such as CDROM discs and DVDs; magneto-optical media such as optical discs; andhardware devices that are specially configured to store and performprogram instructions, such as read-only memory (ROM), random accessmemory (RAM), flash memory, and the like.

Examples of program instructions include both machine code, such asproduced by a compiler, and files containing higher level code that maybe executed by the computer using an interpreter. The described hardwaredevices may be configured to act as one or more software modules inorder to perform the operations of the above-described exampleembodiments, or vice versa. In addition, a non-transitorycomputer-readable storage medium may be distributed among computersystems connected through a network and non-transitory computer-readablecodes or program instructions may be stored and executed in adecentralized manner.

A number of examples embodiments have been described above.Nevertheless, it should be understood that various modifications may bemade. For example, suitable results may be achieved if the describedtechniques are performed in a different order and/or if components in adescribed system, architecture, device, or circuit are combined in adifferent manner and/or replaced or supplemented by other components ortheir equivalents. Accordingly, other implementations are within thescope of the following claims.

What is claimed is:
 1. A video decoding method, the method comprising:receiving a bit stream; and performing an adaptive decoding for a targetblock based on the received bit stream, wherein the adaptive decodingdetermines a quantization parameter of the target block based onquantization parameters of referencing blocks, and performs the decodingfor the target block based on the determined quantization parameter ofthe target block, wherein the reference blocks comprise a block adjacentto the left of the target block and a block adjacent to the above of thetarget block, wherein the quantization parameter of the target block isdetermined by a calculation formula using the quantization parameters ofthe reference blocks, and wherein the reference blocks are blocksincluded in a slice, the slice including the target block.
 2. A videoencoding method, the method comprising: performing an adaptive encodingon a target block, wherein the adaptive encoding determines aquantization parameter of the target block and performs encoding on thetarget block based on the determined quantization parameter, wherein thedetermined quantization parameter corresponds to a result of acalculation formula using quantization parameters of reference blocks,wherein the reference blocks comprise a block adjacent to the left ofthe target block and a block adjacent to the above of the target block,and wherein the reference blocks are blocks included in a slice, theslice including the target block.
 3. A computer readable recordingmedium storing a bitstream generated by a video encoding method, thevideo encoding method comprising: performing an adaptive encoding on atarget block, wherein the adaptive encoding determines a quantizationparameter of the target block and performs encoding on the target blockbased on the determined quantization parameter, wherein the determinedquantization parameter corresponds to a result of a calculation formulausing quantization parameters of reference blocks, wherein the referenceblocks comprise a block adjacent to the left of the target block and ablock adjacent to the above of the target block, and wherein thereference blocks are blocks included in a slice, the slice including thetarget block.